Disable old linting rules from typespec-azure-resource-manager ruleset#4756
Conversation
…decorator rules from ARM ruleset Closes #4753 Co-authored-by: markcowl <1054056+markcowl@users.noreply.github.com>
commit: |
markcowl
left a comment
There was a problem hiding this comment.
@copilot Pull the latest from main, make the changes as specified, rebuild and rebuild docs. validate that all tests pass and samples can be regenerated, then ensure that all files are properly formatted and only changes associated with this pr are in the pr diff
Co-authored-by: markcowl <1054056+markcowl@users.noreply.github.com>
…ecorator rules, tests, and docs Co-authored-by: markcowl <1054056+markcowl@users.noreply.github.com>
Done in fb55e6f. Pulled latest from main, deleted the rules and tests, removed all references, rebuilt, regenerated docs, verified all tests pass (326 ARM + 3 rulesets + 69 samples), and formatted. The diff only contains changes associated with this PR. |
⚡ Benchmark Results
Full details – comparing
|
| Metric | Baseline | Current | Change |
|---|---|---|---|
| total | 🔴 698.2ms | 🔴 1.05s | +50.6% 🔴 |
| loader | 🟢 199.5ms | 🟡 319.0ms | +59.9% 🔴 |
| resolver | 🟢 20.6ms | 🟢 41.2ms | +99.9% 🔴 |
| checker | 🟡 221.6ms | 🟡 381.6ms | +72.2% 🔴 |
| validation | 🟢 49.8ms | 🟢 87.7ms | +76.1% 🔴 |
| ↳ validation/@azure-tools/typespec-azure-core | 🟢 7.3ms | 🟡 13.1ms | +79.2% 🔴 |
| ↳ validation/@typespec/http | 🟢 6.9ms | 🟡 16.2ms | +135.1% 🔴 |
| ↳ validation/@typespec/rest | 🟢 0.7ms | 🟢 1.8ms | +144.4% 🔴 |
| ↳ validation/@typespec/versioning | 🔴 32.4ms | 🔴 52.4ms | +61.5% 🔴 |
| ↳ validation/compiler | 🟢 1.9ms | 🟢 4.0ms | +110.3% 🔴 |
| linter | 🟢 154.5ms | 🟡 222.2ms | +43.8% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/auth-required | 🟢 0.0ms | 🟢 0.1ms | +292.4% |
| ↳ linter/@azure-tools/typespec-azure-core/bad-record-type | 🟢 0.3ms | 🟢 0.6ms | +123.9% |
| ↳ linter/@azure-tools/typespec-azure-core/byos | 🟢 6.4ms | 🟢 8.7ms | +37.3% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/casing-style | 🟢 0.7ms | 🟢 1.5ms | +112.0% |
| ↳ linter/@azure-tools/typespec-azure-core/composition-over-inheritance | 🟢 0.1ms | 🟢 0.2ms | +129.2% |
| ↳ linter/@azure-tools/typespec-azure-core/documentation-required | 🟢 1.0ms | 🟢 2.0ms | +107.8% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/friendly-name | 🟢 0.7ms | 🟢 1.4ms | +102.0% |
| ↳ linter/@azure-tools/typespec-azure-core/key-visibility-required | 🟢 0.2ms | 🟢 0.4ms | +105.4% |
| ↳ linter/@azure-tools/typespec-azure-core/known-encoding | 🟢 0.3ms | 🟢 0.5ms | +63.0% |
| ↳ linter/@azure-tools/typespec-azure-core/long-running-polling-operation-required | 🟢 0.4ms | 🟢 0.9ms | +142.7% |
| ↳ linter/@azure-tools/typespec-azure-core/no-case-mismatch | 🟢 0.3ms | 🟢 0.7ms | +137.7% |
| ↳ linter/@azure-tools/typespec-azure-core/no-closed-literal-union | 🟢 0.4ms | 🟢 1.0ms | +185.0% |
| ↳ linter/@azure-tools/typespec-azure-core/no-enum | 🟢 0.1ms | 🟢 0.3ms | +296.5% |
| ↳ linter/@azure-tools/typespec-azure-core/no-error-status-codes | 🟢 0.1ms | 🟢 0.3ms | +144.9% |
| ↳ linter/@azure-tools/typespec-azure-core/no-explicit-routes-resource-ops | 🟢 0.1ms | 🟢 0.2ms | +71.7% |
| ↳ linter/@azure-tools/typespec-azure-core/no-format | 🟢 0.6ms | 🟢 0.9ms | +46.1% |
| ↳ linter/@azure-tools/typespec-azure-core/no-generic-numeric | 🟢 0.5ms | 🟢 0.9ms | +79.4% |
| ↳ linter/@azure-tools/typespec-azure-core/no-header-explode | 🔴 20.9ms | 🔴 28.1ms | +34.2% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/no-legacy-usage | 🟢 1.2ms | 🟢 2.0ms | +60.6% |
| ↳ linter/@azure-tools/typespec-azure-core/no-multiple-discriminator | 🟢 0.1ms | 🟢 0.3ms | +147.9% |
| ↳ linter/@azure-tools/typespec-azure-core/no-nullable | 🟢 0.3ms | 🟢 0.4ms | +58.7% |
| ↳ linter/@azure-tools/typespec-azure-core/no-offsetdatetime | 🟢 1.3ms | 🟢 2.1ms | +58.5% |
| ↳ linter/@azure-tools/typespec-azure-core/no-openapi | 🟢 2.1ms | 🟢 2.3ms | +13.7% |
| ↳ linter/@azure-tools/typespec-azure-core/no-private-usage | 🟢 2.1ms | 🟢 3.2ms | +50.8% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/no-query-explode | 🔴 22.1ms | 🔴 29.2ms | +31.9% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/no-response-body | 🔴 25.9ms | 🔴 34.3ms | +32.2% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/no-rest-library-interfaces | 🟢 0.0ms | 🟢 0.1ms | +282.2% |
| ↳ linter/@azure-tools/typespec-azure-core/no-route-parameter-name-mismatch | 🟢 5.6ms | 🟢 8.2ms | +45.9% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/no-rpc-path-params | 🟢 0.2ms | 🟢 0.4ms | +95.4% |
| ↳ linter/@azure-tools/typespec-azure-core/no-string-discriminator | 🟢 0.1ms | 🟢 0.2ms | +164.6% |
| ↳ linter/@azure-tools/typespec-azure-core/no-unknown | 🟢 0.2ms | 🟢 0.4ms | +69.4% |
| ↳ linter/@azure-tools/typespec-azure-core/no-unnamed-union | 🟢 0.4ms | 🟢 0.8ms | +101.9% |
| ↳ linter/@azure-tools/typespec-azure-core/operation-missing-api-version | 🟢 0.2ms | 🟢 0.4ms | +98.8% |
| ↳ linter/@azure-tools/typespec-azure-core/request-body-problem | 🟢 0.3ms | 🟢 0.5ms | +46.4% |
| ↳ linter/@azure-tools/typespec-azure-core/require-versioned | 🟢 0.0ms | 🟢 0.1ms | +364.5% |
| ↳ linter/@azure-tools/typespec-azure-core/response-schema-problem | 🔴 24.2ms | 🔴 34.7ms | +43.5% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/rpc-operation-request-body | 🟢 0.4ms | 🟢 0.8ms | +108.5% |
| ↳ linter/@azure-tools/typespec-azure-core/spread-discriminated-model | 🟢 0.3ms | 🟢 0.5ms | +58.2% |
| ↳ linter/@azure-tools/typespec-azure-core/use-standard-names | 🟢 6.0ms | 🟢 7.9ms | +32.3% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-core/use-standard-operations | 🟢 0.1ms | 🟢 0.3ms | +95.3% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-agent-base-type-child-resources | 🟢 5.8ms | 🟡 18.2ms | +215.8% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-agent-base-type-lifecycle-operations | 🟢 0.0ms | 🟢 0.2ms | +650.0% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-common-types-version | 🟢 5.1ms | 🟡 11.5ms | +126.1% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-custom-resource-no-key | 🟢 0.1ms | 🟢 0.2ms | +116.2% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-custom-resource-usage-discourage | 🟢 0.1ms | 🟢 0.1ms | +79.5% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-delete-operation-response-codes | 🟢 1.8ms | 🟢 4.4ms | +144.5% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-no-path-casing-conflicts | 🟡 11.3ms | 🟡 16.4ms | +45.8% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-no-record | 🟢 0.4ms | 🟢 0.6ms | +70.3% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-post-operation-response-codes | 🟢 0.6ms | 🟢 1.4ms | +127.4% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-put-operation-response-codes | 🟢 0.0ms | 🟢 0.2ms | +452.1% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-action-no-segment | 🟢 0.3ms | 🟢 0.4ms | +76.9% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-duplicate-property | 🟢 0.2ms | 🟢 0.4ms | +159.1% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-interface-requires-decorator | 🟢 0.0ms | 🟢 0.0ms | -100.0% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-action-verb | 🟢 0.1ms | 🟢 0.2ms | +86.2% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-envelope-property | 🟢 0.1ms | 🟢 0.3ms | +133.7% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-invalid-version-format | 🟢 0.1ms | 🟢 0.2ms | +257.7% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-key-invalid-chars | 🟢 0.3ms | 🟢 0.5ms | +80.6% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-name-pattern | 🟢 0.0ms | 🟢 0.1ms | +415.3% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-operation | 🟢 0.2ms | 🟢 0.6ms | +189.8% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-operation-response | 🟢 5.5ms | 🟢 9.5ms | +71.5% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-patch | 🟢 0.4ms | 🟢 0.8ms | +126.4% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-path-segment-invalid-chars | 🟢 0.2ms | 🟢 0.4ms | +74.1% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/arm-resource-provisioning-state | 🟢 0.1ms | 🟢 0.4ms | +200.7% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/beyond-nesting-levels | 🟢 0.1ms | 🟢 0.2ms | +134.3% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/empty-updateable-properties | 🟢 0.2ms | 🟢 0.4ms | +132.2% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/improper-subscription-list-operation | 🟢 0.0ms | 🟢 0.1ms | +549.7% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/lro-location-header | 🟡 15.0ms | 🔴 21.1ms | +40.0% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/missing-operations-endpoint | 🟢 0.0ms | 🟢 0.2ms | +313.5% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/missing-x-ms-identifiers | 🟢 0.4ms | 🟢 0.0ms | -100.0% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/no-empty-model | 🟢 0.1ms | 🟢 0.3ms | +92.7% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/no-override-props | 🟢 0.1ms | 🟢 0.3ms | +275.3% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/no-resource-delete-operation | 🟢 0.2ms | 🟢 0.5ms | +111.3% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/no-response-body | 🔴 22.1ms | 🔴 32.2ms | +46.0% 🔴 |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/patch-envelope | 🟢 0.2ms | 🟢 0.4ms | +137.0% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/resource-name | 🟢 0.2ms | 🟢 0.4ms | +144.7% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/secret-prop | 🟢 4.1ms | 🟢 5.1ms | +22.9% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/unsupported-type | 🟢 0.4ms | 🟢 0.7ms | +69.0% |
| ↳ linter/@azure-tools/typespec-azure-resource-manager/version-progression | 🟢 0.1ms | 🟢 0.3ms | +406.8% |
| ↳ linter/@azure-tools/typespec-client-generator-core/property-name-conflict | 🟢 1.2ms | 🟢 2.4ms | +90.0% 🔴 |
| ↳ linter/@azure-tools/typespec-client-generator-core/require-client-suffix | 🟢 0.4ms | 🟢 1.7ms | +378.1% 🔴 |
| emit | 🔴 5.63s | 🔴 6.28s | +11.6% 🔴 |
| ↳ emit/@Azure-Tools | 🟢 0.0ms | 🟢 0.0ms | +0.0% |
| ↳ emit/@azure-tools/typespec-autorest | 🟢 87.0ms | 🟢 131.0ms | +50.6% 🔴 |
| ↳ emit/@azure-tools/typespec-python | 🔴 2.16s | 🔴 2.34s | +8.2% 🔴 |
| ↳ emit/@typespec | 🟢 0.0ms | 🟢 0.0ms | +0.0% |
| ↳ emit/@typespec/http-client-js | 🔴 478.9ms | 🔴 596.6ms | +24.6% 🔴 |
| ↳ emit/@typespec/openapi3 | 🟢 78.9ms | 🟢 113.9ms | +44.5% 🔴 |
| ↳ emit/@typespec/openapi3/compute | 🟢 68.8ms | 🟢 99.2ms | +44.1% 🔴 |
| ↳ emit/@typespec/openapi3/write | 🟢 9.8ms | 🟢 14.5ms | +47.4% 🔴 |
Averaged across 3 specs (azure-arm-resource-manager, azure-core-dataplane, azure-full).
Threshold: changes > ±5% are highlighted.
🟢 Fast · 🟡 Moderate (stages >200ms, rules >10ms) · 🔴 Slow (stages >400ms, rules >20ms)
|
@copilot there are formatting problems with website/src/content/docs/docs/howtos/ARM/rpc-guidelines-coverage.md Please fix formatting and update the pr |
Co-authored-by: markcowl <1054056+markcowl@users.noreply.github.com>
Fixed in the latest commit. The table column widths in the markdown were left at the old wider alignment after the two rows were removed; ran Prettier to re-align. |
|
All changed packages have been documented.
Show changes
|
|
You can try these changes here
|
missing-x-ms-identifiersis no longer a lintdiff error andarm-resource-interface-requires-decoratorhas no impact. Both are disabled from the resource-manager ruleset.falseinpackages/typespec-azure-rulesets/src/rulesets/resource-manager.ts#suppressdirectives in sample specs (specific-extension,legacy/static-routes)